iT邦幫忙

2026 iThome 鐵人賽

DAY 28
0
Software Development

三十天轉職成「醫療軟體工程師」系列 第 28 篇

Day27 - 形成性評量(Formative Evaluation)與總結性評量(Summative Evaluation)

  • 分享至 

  • xImage
  •  

今天的會議在討論一個問題,我覺得很有意思,需求是 App 連接外部裝置後,會依照偵測到的數據來發出警報,有意思的地方是 RD 是根據先前 PM 提供的規格進行開發,但是臨床人員發現他們沒有辦法測試到不正常的情況,也就是發出警報的情況,所以大家在討論該怎麼樣去測試這個問題。

另一方面,我們也在討論這個數值的區間定義是否正確。查了一下,這個數據區間是來自很久以前 PM 所提供的規格,具體來源可能也不可考了。但因為時空背景不同,我們現在的應用多了其他需求,所以這個數值區間可能已經不完全適用。

在這樣的前提之下,我們應該怎麼樣去進行後續的開發呢?

形成性評量(Formative Evaluation)與總結性評量(Summative Evaluation)

好,來到第一個問題:我們該在什麼時候、什麼階段去測試這個警報呢?也就是說,當我們將軟體交付給臨床人員測試時,他們是否應該驗證到所有的測試情境?

我的認知是不一定。因為很多時候,其實可以先透過端對端測試(End-to-End Test)來驗證。當我們的測試滿足了條件,測試結果與報告,可以支持受測版本在指定條件下依規格觸發警報。便可以說明這個警報在這樣的數據下是可以正常動作的。

臨床人員測試的目的,不一定需要重做所有工程測試,但使用評量還要確認警報是否被注意、理解,以及相關操作是否能安全完成。

好,第二個問題則是:這個數據的區間是不是正確的?

以前我們在開發時,工程師通常拿到規格書就開始實作,這在一般的軟體開發可能都是如此。不過醫療軟體是一門精密的學問,如果我們在這樣的情境下任意設置數值區間,可能會與臨床現況不符。

實際上我們應該怎麼進行呢?我覺得我們應該要與臨床人員確認需求。當需求確認之後,除了確認整體需求,還要確認裡面的關鍵數值是否正確、區間是否定義清楚。

工程師不一定具有醫療背景,所以這時候需要由臨床人員提供相關的專業知識。在這樣的情境下讓數據經過充分討論,並把它寫在我們的規格書內。

當我們確認了數值區間的依據,也能透過測試檢查警報是否按照規格觸發,接下來還有第三個問題:警報發出之後,使用者知道它在提醒什麼,以及下一步要做什麼嗎?

在介面還能調整的階段,我們可以用模擬資料重現警報情境,請臨床人員操作,觀察他們有沒有注意到警報、如何理解提示,以及在哪裡猶豫或做出非預期操作。必要時再追問原因,把發現帶回介面設計,修改後重新評量。這就是形成性評量(Formative Evaluation)的用途。

等介面與操作方式定下來後,再讓代表性的預期使用者,在接近實際使用的環境與訓練條件下,完成風險分析所識別的關鍵任務。主持人不在操作途中教答案,操作後再透過訪談釐清困難與錯誤原因。這就接到總結性評量(Summative Evaluation)與 FDA 人因確效測試所關注的問題。

形成性評量:找出哪裡讓人誤解,再改設計

形成性評量(Formative Evaluation)在設計與開發過程中進行,可用概念、原型或可操作版本,配合多輪觀察來改善介面。我們可以發現在軟體開發當中,軟體不可能一次到位,所以開發與設計之間會來回討論。

在醫療軟體也是一樣,我們會將軟體交由臨床人員測試,他們會給予臨床端的回饋。RD 在收到回饋之後,反覆地雕琢,就可以將其改成更符合臨床人員使用的版本。

而我注意到一點,或許是因為臨床人員與工程師的工作經驗、關注重點不同,純粹會以臨床人員的角度來思考。這反而對軟體的改進有很大的幫助,因為有時候我們容易被自己的知識所限制住,沒辦法找出新的方式來改進。透過不同角色的角度來分析、確認是否還有可以修改的地方,是非常重要的。

總結性評量:用接近實際使用的條件評估最終介面

經過形成性評量反覆修改後,當警報的數值區間、操作流程與介面設計已經確認,接下來就要進行總結性評量。我們要確認的是:預期使用者在接近實際使用的條件下,能不能理解警報,並完成相關的安全操作。

以前面的警報功能為例,可以在模擬使用環境中重現警報情境,請能代表預期使用者的臨床人員操作。觀察他們是否注意到警報、是否理解訊息,以及能否完成事先定義的操作。測試情境要涵蓋風險分析所識別的所有關鍵任務,而不只是平常最容易遇到的正常流程。

這個階段的訓練與可取得的說明資訊,應該符合實際使用條件。主持人不在操作途中額外提示步驟,操作結束後再透過訪談,了解使用者當時如何理解畫面,以及為什麼猶豫或做出某個操作。

如果發現使用者漏看警報、誤解訊息或無法完成操作,就需要結合觀察與訪談分析原因,再評估風險與後續修改。若修改影響安全相關操作,也要安排相應的再次確效。

因此,形成性評量用來發現問題、改善設計;總結性評量則評估最終設計在預期使用條件下的表現。工程測試確認警報是否依規格觸發,人因評量則繼續確認使用者能否正確理解與處理它。

小結

醫療軟體如同一般軟體開發,都需要反覆測試、迭代,逐步改善功能與使用方式。

今天介紹的形成性評量(Formative Evaluation),讓我們在設計與開發過程中,觀察使用者的操作、找出問題,再把結果帶回設計。透過反覆評量與修改,改善操作流程與 UI/UX,降低使用錯誤。

另一方面,總結性評量(Summative Evaluation)是在設計定下來後,讓代表性的預期使用者,在接近實際使用的條件下操作,確認他們能否理解警報並完成安全相關任務。如果出現使用錯誤或操作困難,就需要記錄、分析原因並評估風險,再決定是否修改設計,以及需要哪些再次評量。


上一篇
Day26 - 雙向追溯與需求追溯矩陣 (RTM)
下一篇
Day28 - 三個降低 LLM 幻覺風險的方法
系列文
三十天轉職成「醫療軟體工程師」 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言